home *** CD-ROM | disk | FTP | other *** search
/ Gamers Delight 2 / Gamers Delight 2.iso / Aminet / game / wb / PopLife.lha / PopLife / PopLife.doc < prev    next >
Text File  |  1987-11-15  |  5KB  |  136 lines

  1. /* ======================================================:ts=8============ */
  2.  
  3.     PopLife PopLife PopLife PopLife PopLife PopLife PopLife PopLife
  4.  
  5.     by    Olaf /* KosmoSoft */ Seibert
  6.         Beek 5
  7.         5815 CS  Merselo
  8.         The Netherlands
  9.  
  10.     PopLife PopLife PopLife PopLife PopLife PopLife PopLife PopLife
  11.  
  12. /* ======================================================================= */
  13.  
  14.  
  15.     W H A T   I S   ` L I F E ' ? ?
  16.  
  17.     Life is a sort of game, played with little one-cell beasties on a
  18. rectangular grid. Sortof like your Amiga's screen! On this grid, the
  19. cells (as the little animals are mostly referred to) live and die according
  20. to some specific rules.
  21.  
  22.  
  23.     H O W   A R E   T H E S E   R U L E S ? ?
  24.  
  25.     First, the number of neighbour cells of each cell is counted. Every
  26. cell exactly one place to the left, right, up and down is a neighbour,
  27. and so are the cells that are next to the four corners of the cell (as if
  28. every cell is square :-), so there can be up to eight neighbours.
  29.     Next, in one step, for every cell this number of neighbours is
  30. examined. The following rules are then applied:
  31.  
  32.     o  If an existing cell has 2 or 3 neighbours, it will survive.
  33.     o  If an empty space has exactly 3 neighbours, there will grow
  34.        a cell.
  35.     o  Every other cell will die, and every other empty place will
  36.        remain empty.
  37.  
  38. Even though these rules seem to be simple, they can yield interesting
  39. results. Try bringing your Workbench screen to life! Or maybe combine it
  40. with a graphics program of some sort...
  41.  
  42.  
  43.     H O W   T O   U S E   P O P L I F E
  44.  
  45.     You start PopLife by typing
  46.  
  47.     o    run popcli     -or-    run popcli >nil:
  48.     o    run popcli 1   -or-    run popcli >nil: 1
  49.  
  50. from a CLI, or you can double-click the provided icon from the Workbench.
  51. Doesn't it look like a CLI window with some Life in it ??
  52.  
  53.     Normally, PopLife uses the blitter to generate. This is very fast,
  54. but takes a temporary memory area of FIVE bitplanes as large as your screen.
  55. As an alternative, if not enough memory is available, there is a routine
  56. which uses only one temporary bitplane, but which is slower, since it only
  57. uses the processor to do the work on 32 bits simultaneously.
  58.     You can force PopLife to use the slow, memory-efficient routine
  59. by giving PopLife a 1 as an argument. Note that this is NOT possible
  60. from the Workbench.
  61.  
  62.     PopLife has three command keys associated with it. The initial
  63. greeting message will point these out to you. < For Workbench users: the
  64. window in which the message is will disappear after a delay of ten seconds.
  65. To make it go away sooner, hit the return key. >
  66. A more complete description follows here.
  67.  
  68.     Left Amiga F6
  69.  
  70.     This prepares PopLife for further action. It looks which screen is
  71. the frontmost, and subsequently uses this screen for its activities,
  72. until PopLife is de-activated again.
  73.     PopLife also allocates some working memory that is needed for the
  74. blitter. This is 100 K of Chip memory, if you PopLife a 640 x 256 Workbench
  75. screen.
  76.     If you press Left Amiga F6 again, PopLife deallocates this memory
  77. and forgets about the screen. You should do this BEFORE the screen is closed.
  78. PopLife can not detect such a thing automagically, and won't because of
  79. speed, even if it could (and I _do_ know it is possible to some extent).
  80.  
  81.     !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  82.     WARNING: NOT DE-ACTIVATING POPLIFE BEFORE THE SCREEN IS CLOSED WILL
  83.     CERTAINLY CRASH THE SYSTEM if you want a new generation.
  84.     !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
  85.  
  86.     Left Amiga F7
  87.  
  88.     If PopLife is initialised, it will also react to its other
  89. keystrokes. With F7 PopLife will generate the next generation of cells and
  90. display these on the active screen. This will ruin any text or Workbench
  91. windows and icons, but try it anyway.
  92.  
  93.     Left Amiga F8
  94.  
  95.     This keystroke will make PopLife generate new generations at full
  96. speed. The last time I checked, it did about 6.8 generations per second on
  97. a 640 x 256 Workbench screen.
  98.     To stop, you can press the same Left Amiga F8 again. You can also
  99. use the Deactivate keystroke, PopLife will stop AND de-activate, as described
  100. above.
  101.  
  102.     SIGBREAKF_CTRL_C
  103.  
  104.     To get rid of PopLife entirely, you may do one of the following
  105. things:
  106.  
  107.     From the CLI: Type PopLife again. This new PopLife announces that
  108. it will terminate the other PopLife, as it actually does. You may also use
  109. the AmigaDOG BREAK command to send it a Control-C. (BREAK <cli number>)
  110.  
  111.     From the Workbench: Double-click on the PopLife icon again. This
  112. newly started PopLife announces that it will terminate the other PopLife,
  113. as it actually does.
  114.  
  115.  
  116.     C R E D I T S
  117.  
  118.     I must give credit to the following persons, whose programs I have
  119. ripped apart and put together:
  120.  
  121.     Tomas Rokicki (was 781@navajo.STANFORD.EDU), for the blitter Life
  122. routines. By the way, I found it necessary to clean them up a little, AND TO
  123. WRITE SOME DOCUMENTATION. Look at the comments in the source.
  124.  
  125.     The (to me) unknown author of the PDP-11 (I wish I had one) version
  126. of the assembler routine.
  127.  
  128.     John Toebes, 235 Trillingham Ln, Cary, NC 27511, USA. He wrote
  129. PopCLI II, which gave me the idea and a lot of his code I am using here.
  130.  
  131.     Olaf Seibert (Kosmos Software) <me> who has thrown code of the above
  132. mentioned persons together, and who actually wrote some of his own!
  133. Anyone who thinks this program is shareware, can send some small amount of
  134. $$ (not $$$) to Olaf Seibert, Beek 5, 5815 CS  Merselo, The Netherlands.
  135. Of course, I didn't mention shareware anywhere.
  136.